package com.lihepeng.leecode.frequency.ArrayList;

/**
 * 请实现无重复数字的升序数组的二分查找
 *
 * 给定一个 元素升序的、无重复数字的整型数组 nums 和一个目标值 target ，写一个函数搜索 nums 中的 target，如果目标值存在返回下标（下标从 0 开始），否则返回 -1
 */
public class Solution17 {
    public int search (int[] nums, int target) {
        if (nums ==null || nums.length ==0) {
            return -1;
        }
        int left =0;
        int right = nums.length-1;
        while (left <= right) {
            int mid = (left+right)/2;
            if (nums[mid]>target) {
                right = mid-1;
            }
            if (nums[mid] <target) {
                left = mid+1;
            }
            if (nums[mid] == target) {
                return mid;
            }
        }
        return -1;
    }
}
